package com.data.dao;

import java.util.List;

import com.base.dao.TemplateDao;
import com.data.entity.ChargeMin;

public interface ChargeMinDao extends TemplateDao<ChargeMin, Integer>{
	/**
	 * 获取最后一条设备半小时电费记录
	 * @param id  生产线或者设备id
	 * @param isLine  是否为生产线  Y为生产线，N为设备
	 * @return
	 */
	ChargeMin getLastChargeMin(int id,String isLine);
	/**
	 * 根据生产线或者设备id和时间查询半小时电费记录
	 * @param id  生产线或者设备id
	 * @param belongTime
	 * @param isLine  是否为生产线  Y为生产线，N为设备
	 * @return
	 */
	ChargeMin getChargeMinByIdAndDate(int id,String belongTime,String isLine);
	/**
	 * 根据开始时间和结束时间查询时间段内电费记录
	 * @param id   设备或者生产线id
	 * @param startDate
	 * @param endDate
	 * @param chargeName
	 * @param isLine
	 * @return
	 */
	List<ChargeMin> getChargeMinsByDate(int id,String startDate,String endDate,String chargeName,String isLine);
	/**
	 * 根据时间区间查询半小时电费记录
	 * @param id设备id或生产线id
	 * @param startDate
	 * @param endDate
	 * @return
	 */
	List<ChargeMin> getChargesMinsByAearDate(int id,String startDate,String endDate,String isLine );

	/**
	 * 获取当天的所有半小时电度电费记录
	 * @param id设备或者生产线id
	 * @param belongTime(如：2016-06-16)
	 * @return
	 */
	List<ChargeMin> getChargeMinsByDay(int id,String belongTime,String isLine);
	/**
	 * 获取时间区间内消耗的电度
	 * @param equId
	 * @param startDate
	 * @param endDate
	 * @return
	 */
	ChargeMin getDurationByTime (int equId,String startDate,String endDate);
	/**
	 * 根据日期获取指定类型的电度电费累加值
	 * @param equId
	 * @param chargeName
	 * @param time(如：2016-06-16)
	 * @return
	 */
	ChargeMin getDurationListByType(int equId,String chargeName,String time);

}
